步骤

安装php7.2

  1. 安装php

    #安装yum必备工具 sudo yum install epel-release yum-utils #安装php7的安装源 sudo yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm #配置php7安装源为7.2版本 sudo yum-config-manager --enable remi-php72 #安装必备php包 sudo yum install php-cli php-fpm php-mysql php-json php-opcache php-mbstring php-xml php-gd php-curl

因为我们选择了nginx作为服务器, 所以需要安装php-fpm.它相当于简易版服务器, 默认情况下它是以tcp协议监听9000端口. 所以我们对php-fpm进行配置, 让它能被nginx进行转发.

  1. 修改/etc/php-fpm.d/www.conf配置文件:

    #按这样修改就行,其他配置保持原样 user = nginx group = nginx listen = /run/php-fpm/www.sock listen.owner = nginx listen.group = nginx

因为linux强大的权限限制, 所以我们要更改/var/lib/php文件夹的所有者, 该文件夹包含了php的所有命令.

  1. 修改/var/lib/php的拥有组, 这样凡是nginx组的成员都能操作该文件夹

    sudo chown -R root:nginx /var/lib/php

  2. 重启php-fpm

    sudo systemctl enable php-fpm sudo systemctl start php-fpm

安装wordpress

  1. 下载最新安装包并解压

    sudo mkdir -p /usr/local/temp cd /usr/local/temp wget https://wordpress.org/latest.tar.gz tar xf latest.tar.gz

  2. 移动到自己喜欢的目录, 并修改该目录的权限

    mv /usr/local/temp/wordpress /usr/local/ sudo chown -R nginx:nginx /usr/local/wordpress

配置nginx

我默认你有ssl证书, 不知道怎么申请证书, 点我了解用acme申请证书, 我以域名example.com为例来讲解nginx配置:

#这个server就是监听80端口,当请求匹配到www.example.com和example.com, 重定向到https://www.example.com$request_uri. 
#$request_uri是nginx自带的变量, 代表了请求路径.
#例如https://example.com/abc/d.html, $request_uri是/abc/d.html
server {
    listen       80;
    server_name  www.example.com example.com;
    return 301 https://www.example.com$repquest_uri;
}

#这个server是监听443端口, 并启用HTTP2协议, 该协议是http1.1的升级版, 有助于性能提升. 当请求匹配example.com时, 重定向到https://www.example.com$request_uri
#剩下都是固定配置,就是证书的位置
server {
  listen  443 ssl http2;                     
  ssl_certificate       /root/my-tengxunyun/volumn/acme.sh/example.com/example.com.cer;
  ssl_certificate_key   /root/my-tengxunyun/volumn/acme.sh/example.com/example.com.key;
  ssl_protocols         TLSv1 TLSv1.1 TLSv1.2;
  ssl_ciphers           HIGH:!aNULL:!MD5;
  server_name           example.com
  return 301 https://www.example.com$request_uri;

 }

#这个server就是主要的,用来接收请求并转发
server {
    listen  443 ssl http2;
    # SSL parameters                   
    ssl_certificate       /root/my-tengxunyun/volumn/acme.sh/www.example.com/www.example.com.cer;
    ssl_certificate_key   /root/my-tengxunyun/volumn/acme.sh/www.example.com/www.example.com.key;
    ssl_protocols         TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers           HIGH:!aNULL:!MD5;
    # server_file_position
    server_name           www.example.com
    root                  /usr/local/wordpress;
    index                 index.php;         

    # log files
    access_log /var/log/nginx/example.access.log;
    error_log /var/log/nginx/example.error.log;

    #当请求时/favicon.ico文件时,关闭日志
    location = /favicon.ico {
        log_not_found off;
        access_log off;
    }
    #当请求是/robots.txt文件时,关闭日志
    location = /robots.txt {
        allow all;
        log_not_found off;
        access_log off;
    }
    #对所有请求进行拦截,先试着找$uri这个文件,如果不存在就找$uri/目录,实在找不到就找/index.php?$args.
    #$uri, $args是nginx内置的变量,对应请求的路径和参数
    location / {
        try_files $uri $uri/ /index.php?$args;
    }
    
    #如果还找不到,就匹配以.php结尾的文件,最终都找不到就报404错误
    location ~ \.php$ {
        try_files $uri =404;
        #这个就是nginx转发的地址,前面设置的php-fpm监听的地方
        fastcgi_pass unix:/run/php-fpm/www.sock;
        fastcgi_index   index.php;
        #这个设置php文件寻找的路径是$document_root$fastcgi_script_name,也是nginx内置的变量
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }
    #对这些静态文件,关闭日志,并且设置能保存的最大期限
    location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg)$ {
        expires max;
        log_not_found off;
    }
}
           

总结

这就是wordpress+nginx的全攻略, 剩下就是装个mysql数据库, 就能愉快玩耍了!

THE END
推荐文章
  • linux安装docker

  • sequelize查询条件空字符串或null

  • 个人博客是使用hexo还是wordpress

  • MySQL添加外键失败,错误代码:1452

  • scp命令

  • 微信公众号开发(4)-微信公众号回复模板

  • lin-ui 用npm安装构建完npm直接报错

  • 黄帝内经-第40篇-腹中论篇(1)

评论 共0条
开启精彩搜索

热门搜索

暂无

历史搜索

用户名/邮箱/手机号
密码
用户名
密码
重复密码
邮箱/手机号
验证码
发送验证码
59秒后可重发
注册
找回密码
邮箱/手机号
验证码
发送验证码
59秒后可重发
新密码
重复密码
请选择支付方式
余额支付

购买将消耗【10

微信支付
微信扫码支付 0 元
[ 04分50秒 ]
请使用微信扫一扫
扫描二维码支付
支付宝支付
支付宝扫码支付 0 元
[ 04分50秒 ]
请使用支付宝扫一扫
扫描二维码支付
已完成支付
未完成支付

请输入验证码

点击验证码可以刷新

你确认吗?

确认

2024年10月1日

0字

0字

2024年10月

0字

新增

0字

新增

0字

0字

新增

0字

0字

新增

0字

0字

新增

0字

0字

新增

0字

0字

新增

0字

0字

新增

0字

0字

0字

新增

0字

0字

0字

0字

新增

0字

0字